home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / serien / purity / nr.42 / includes3v1 / includes3v1.lha / Intuition / IntuitionBase.i < prev    next >
Text File  |  1994-12-04  |  2KB  |  81 lines

  1. { IntuitionBase.i }
  2.  
  3. {$I   "Include:Exec/Libraries.i"}
  4. {$I   "Include:Intuition/Intuition.i"}
  5. {$I   "Include:Exec/Interrupts.i"}
  6. {$I   "Include:Exec/Types.i"}
  7.  
  8. { these are the display modes for which we have corresponding parameter
  9.  *  settings in the config arrays
  10.  }
  11. CONST
  12.  DMODECOUNT    =  $0002;  { how many modes there are }
  13.  HIRESPICK     =  $0000;
  14.  LOWRESPICK    =  $0001;
  15.  
  16.  EVENTMAX = 10;             { size of event array }
  17.  
  18. { these are the system Gadget defines }
  19.  RESCOUNT       = 2;
  20.  HIRESGADGET    = 0;
  21.  LOWRESGADGET   = 1;
  22.  
  23.  GADGETCOUNT    = 8;
  24.  UPFRONTGADGET  = 0;
  25.  DOWNBACKGADGET = 1;
  26.  SIZEGADGET     = 2;
  27.  CLOSEGADGET    = 3;
  28.  DRAGGADGET     = 4;
  29.  SUPFRONTGADGET = 5;
  30.  SDOWNBACKGADGET= 6;
  31.  SDRAGGADGET    = 7;
  32.  
  33.  
  34.  
  35. { ======================================================================== }
  36. { === IntuitionBase ====================================================== }
  37. { ======================================================================== }
  38. {
  39.  * Be sure to protect yourself against someone modifying these data as
  40.  * you look at them.  This is done by calling:
  41.  *
  42.  * lock = LockIBase(0), which returns an Integer.  When done call
  43.  * UnlockIBase(lock) where lock is what LockIBase() returned.
  44.  }
  45.  
  46. Type
  47.  
  48.     IntuitionBase = record
  49. { IntuitionBase should never be directly modified by programs   }
  50. { even a little bit, guys/gals; do you hear me? }
  51.  
  52.         LibNode         : Library;
  53.  
  54.         ViewLord        : View;
  55.  
  56.         ActiveWindow    : WindowPtr;
  57.         ActiveScreen    : ScreenPtr;
  58.  
  59.     { the FirstScreen variable points to the frontmost Screen.   Screens are
  60.      * then maintained in a front to back order using Screen.NextScreen
  61.      }
  62.  
  63.         FirstScreen     : ScreenPtr;    { for linked list of all screens }
  64.  
  65.         Flags           : Integer;      { see definitions below }
  66.         MouseY,
  67.         MouseX          : Short;        { mouse position relative to View }
  68.  
  69.         Seconds         : Integer;      { timestamp of most current input event }
  70.         Micros          : Integer;      { timestamp of most current input event }
  71.  
  72.     { I told you this was private.
  73.      * The data beyond this point has changed, is changing, and
  74.      * will continue to change.
  75.      }
  76.  
  77.     end;
  78.     IntuitionBasePtr = ^IntuitionBase;
  79.  
  80.  
  81.